﻿using DFGK_WMS.Model.Dto;
using DFGK_WMS.Model.Models;
using DFGK_WMS.Model.Wcs;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace DFGK.IService
{
    public interface IInstructService
    {
        /// <summary>
        /// 指令显示
        /// </summary>
        /// <param name="InstructType"></param>
        /// <param name="Status"></param>
        /// <param name="PalletBarcode"></param>
        /// <param name="pageIndex"></param>
        /// <param name="pageSize"></param>
        /// <param name="totalCount"></param>
        /// <returns></returns>
        List<Instruct> GetInstructList(int InstructType, int Status, string? PalletBarcode, int pageIndex, int pageSize,out int totalCount);

        /// <summary>
        /// 货品明细
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        List<InstructMaterDto> GetInstructMater(long id);

        /// <summary>
        /// 撤销指令
        /// </summary>
        /// <param name="id"></param>
        /// <param name="message"></param>
        /// <returns></returns>
        bool CancelInstruct(long id, out string message);

        /// <summary>
        /// 修改目标位置
        /// </summary>
        /// <param name="taskChange"></param>
        /// <returns></returns>
        bool WmsTaskChangeApi(TaskChangeDTO taskChangeDTO, out string message);
    }
}
